window.onload = function () {
    function init() {
        let draggableCursor = 'https://mapapi.qq.com/web/lbs/javascriptV2/demo/img/c1.cur';//设置鼠标拖拽元素样式
        let draggingCursor = 'https://mapapi.qq.com/web/lbs/javascriptV2/demo/img/c2.cur';//设置鼠标移动样式
        let zoom = 17;//层级
        /* 初始化地图 */
        var map = new qq.maps.Map(document.getElementById("container"), {
            // center: new qq.maps.LatLng(lat_val, lng_val),//设置中心点坐标
            zoom: zoom,
            draggableCursor: draggableCursor,
            draggingCursor: draggingCursor
        });

        let lat = document.getElementById('lat_val');
        let lng = document.getElementById('lng_val');
        let lat_val = lat.value ? parseFloat(lat.value) : '';
        let lng_val = lng.value ? parseFloat(lng.value) : '';
        if (!lat_val && !lng_val) {
            $.get(
                'position',
                function (data) {
                    lat_val = data.data.location.lat;
                    lng_val = data.data.location.lng;
                    lat.value = lat_val;
                    lng.value = lng_val;
                }
            );
        }
        map.panTo(new qq.maps.LatLng(lat_val, lng_val));
        // console.log(lat_val, lng_val);
        // let center = new qq.maps.LatLng(lat_val, lng_val);//设置中心点坐标


        /* 点击抓取位置 */
        //标签图层
        var marker;
        //绑定单击事件，传递事件函数名称
        var listener = qq.maps.event.addListener(map, 'click', function (event) {
            lat.value = event.latLng.getLat().toFixed(6);
            lng.value = event.latLng.getLng().toFixed(6);
            if (!marker) {
                marker = new qq.maps.Marker({
                    position: event.latLng,
                    map: map,
                    icon: '/static/admin/images/map-icons/map_mark1.png',
                    // icon: 'https://mapapi.qq.com/web/lbs/javascriptV2/demo/img/c2.cur',
                });
                return;
            }
            marker.setPosition(event.latLng);
        });
        //移除绑定事件
        window.removeEvent = function () {
            qq.maps.event.removeListener(listener);
        };
        /* 关键字搜索 */
        //实例化自动完成
        var ap = new qq.maps.place.Autocomplete(document.getElementById('place'));
        var keyword = "";
        //调用Poi检索类。用于进行本地检索、周边检索等服务。
        var searchService = new qq.maps.SearchService({
            complete: function (results) {
                if (results.type === "CITY_LIST") {
                    searchService.setLocation(results.detail.cities[0].cityName);
                    searchService.search(keyword);
                    return;
                }
                var pois = results.detail.pois;
                var latlngBounds = new qq.maps.LatLngBounds();
                for (var i = 0, l = pois.length; i < l; i++) {
                    var poi = pois[i];
                    latlngBounds.extend(poi.latLng);
                    var marker = new qq.maps.Marker({
                        map: map,
                        position: poi.latLng
                    });

                    marker.setTitle(poi.name);
                }
                map.fitBounds(latlngBounds);
            }
        });
        //添加监听事件
        qq.maps.event.addListener(ap, "confirm", function (res) {
            keyword = res.value;
            searchService.search(keyword);
        });

    }
    //调用初始化函数
    setTimeout(function (){
        init();
    }, 300)
}


